// 注册小程序应用
import $http from './utils/request';
const utils = require('./utils/utils');
App({
	$http,
	utils,
	/**
	 * 当小程序初始化完成时，会触发 onLaunch（全局只触发一次）
	 */
	onLaunch: function () {
		const updateManager = wx.getUpdateManager();
		// 是否有新版本
		updateManager.onCheckForUpdate(hasUpdate => {
			console.log('hasUpdate: ', hasUpdate.hasUpdate);
		});
		// 更新已经准备好
		updateManager.onUpdateReady(() => {
			wx.showModal({
				title: '更新提示',
				content: '新版本已经准备好，为了更好体验请更新！',
				confirmColor: '#1cccdf',
				success: res => {
					if (res.confirm) {
						// 重启应用
						updateManager.applyUpdate();
						console.log('点击重启');
					}
				},
			});
		});
		updateManager.onUpdateFailed(() => {
			// 新版本下载失败
			wx.showModal({
				title: '已经有新版本了',
				content: '新版本已经上线啦~，请您删除当前小程序，重新搜索打开！',
				confirmColor: '#1cccdf',
				success: res => {
					if (res.confirm) {
						// 强制关闭小程序
						wx.exitMiniProgram({
							success: function () {
								console.log('小程序关闭成功');
							},
						});
					}
				},
			});
		});
	},

	/**
	 * 当小程序启动，或从后台进入前台显示，会触发 onShow
	 */
	onShow: function (options) {},

	/**
	 * 当小程序从前台进入后台，会触发 onHide
	 */
	onHide: function () {},

	/**
	 * 当小程序发生脚本错误，或者 api 调用失败时，会触发 onError 并带上错误信息
	 */
	onError: function (msg) {},
});
